<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
  <head>
    <meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
    <title>DbEnv::set_errfile()</title>
    <link rel="stylesheet" href="apiReference.css" type="text/css" />
    <meta name="generator" content="DocBook XSL Stylesheets V1.73.2" />
    <link rel="start" href="index.html" title="Berkeley DB C++ API Reference" />
    <link rel="up" href="env.html" title="Chapter 5.  The DbEnv Handle" />
    <link rel="prev" href="envset_errcall.html" title="DbEnv::set_errcall()" />
    <link rel="next" href="envset_error_stream.html" title="DbEnv::set_error_stream()" />
  </head>
  <body>
    <div xmlns="" class="navheader">
      <div class="libver">
        <p>Library Version 11.2.5.3</p>
      </div>
      <table width="100%" summary="Navigation header">
        <tr>
          <th colspan="3" align="center">DbEnv::set_errfile()</th>
        </tr>
        <tr>
          <td width="20%" align="left"><a accesskey="p" href="envset_errcall.html">Prev</a> </td>
          <th width="60%" align="center">Chapter 5. 
                The DbEnv Handle
        </th>
          <td width="20%" align="right"> <a accesskey="n" href="envset_error_stream.html">Next</a></td>
        </tr>
      </table>
      <hr />
    </div>
    <div class="sect1" lang="en" xml:lang="en">
      <div class="titlepage">
        <div>
          <div>
            <h2 class="title" style="clear: both"><a id="envset_errfile"></a>DbEnv::set_errfile()</h2>
          </div>
        </div>
      </div>
      <pre class="programlisting">#include &lt;db_cxx.h&gt;

void
DbEnv::set_errfile(FILE *errfile); </pre>
      <p>
        When an error occurs in the Berkeley DB library,
        
         <span>
             an exception is thrown
         </span>
         or an error return value is returned by the interface.  In some cases,
         however, the return value may be insufficient to completely describe
         the cause of the error especially during initial application
         debugging.     
    </p>
      <p>
         The <code class="methodname">DbEnv::set_errfile()</code> and <a class="xref" href="dbset_errfile.html" title="Db::set_errfile()">Db::set_errfile()</a>  
         methods are used to enhance the mechanism for reporting error messages to the
         application by setting a C library FILE * to be used for displaying
         additional Berkeley DB error messages.  In some cases, when an error
         occurs, Berkeley DB will output an additional error message to the
         specified file reference.
    </p>
      <p>
         Alternatively, you can use the
            <span>
                <a class="xref" href="envset_error_stream.html" title="DbEnv::set_error_stream()">DbEnv::set_error_stream()</a>
                and
                <a class="xref" href="dbset_error_stream.html" title="Db::set_error_stream()">Db::set_error_stream()</a>
                methods to display the additional messages via an output stream, or the
            </span>

         <a class="xref" href="envset_errcall.html" title="DbEnv::set_errcall()">DbEnv::set_errcall()</a>  or
         <a class="xref" href="dbset_errcall.html" title="Db::set_errcall()">Db::set_errcall()</a>
         methods to capture the additional error information in a way that does
         not use C library FILE *'s.
         <span>You should not mix these approaches.</span>
    </p>
      <p>
         The error message will consist of the prefix string and a colon
         ("<span class="bold"><strong>:</strong></span>") (if a prefix string was
         previously specified using 
         <a class="xref" href="dbset_errpfx.html" title="Db::set_errpfx()">Db::set_errpfx()</a>  or 
         <a class="xref" href="envset_errpfx.html" title="DbEnv::set_errpfx()">DbEnv::set_errpfx()</a> ), an
         error string, and a trailing &lt;newline&gt; character.
    </p>
      <p>
         The default configuration when applications first create
         <a class="link" href="db.html" title="Chapter 2.  The Db Handle">Db</a>  or
         <a class="link" href="env.html" title="Chapter 5.  The DbEnv Handle">DbEnv</a>  handles is as if the
         <a class="xref" href="dbset_errfile.html" title="Db::set_errfile()">Db::set_errfile()</a>  or
         <code class="methodname">DbEnv::set_errfile()</code> methods were called with the standard error output
         (stderr) specified as the FILE * argument.  Applications wanting no
         output at all can turn off this default configuration by calling the
         <a class="xref" href="dbset_errfile.html" title="Db::set_errfile()">Db::set_errfile()</a>  or
         <code class="methodname">DbEnv::set_errfile()</code> methods with NULL as the FILE * argument.
         Additionally, explicitly configuring the error output channel using
         any of the following methods will also turn off this default output for the application:
     </p>
      <div class="itemizedlist">
        <ul type="disc">
          <li>
            <p>
                <code class="methodname">DbEnv::set_errfile()</code>
             </p>
          </li>
          <li>
            <p>
                <a class="xref" href="dbset_errfile.html" title="Db::set_errfile()">Db::set_errfile()</a>
             </p>
          </li>
          <li>
            <p>
                <a class="xref" href="envset_errcall.html" title="DbEnv::set_errcall()">DbEnv::set_errcall()</a>
             </p>
          </li>
          <li>
            <p>
                <a class="xref" href="dbset_errcall.html" title="Db::set_errcall()">Db::set_errcall()</a>
             </p>
          </li>
          <li>
            <p>
                <a class="xref" href="envset_error_stream.html" title="DbEnv::set_error_stream()">DbEnv::set_error_stream()</a>
             </p>
          </li>
          <li>
            <p>
                 <a class="xref" href="dbset_error_stream.html" title="Db::set_error_stream()">Db::set_error_stream()</a>
             </p>
          </li>
        </ul>
      </div>
      <p>
         This error logging enhancement does not slow performance or
         significantly increase application size, and may be run during normal
         operation as well as during application debugging.
    </p>
      <p>
         The <code class="methodname">DbEnv::set_errfile()</code> method configures operations performed
         using the specified <a class="link" href="env.html" title="Chapter 5.  The DbEnv Handle">DbEnv</a>  handle, not all
         operations performed on the underlying database environment.
    </p>
      <p>
         The <code class="methodname">DbEnv::set_errfile()</code> method may be called at any time during the
         life of the application.
    </p>
      <div class="sect2" lang="en" xml:lang="en">
        <div class="titlepage">
          <div>
            <div>
              <h3 class="title"><a id="idp7267456"></a>Parameters</h3>
            </div>
          </div>
        </div>
        <div class="sect3" lang="en" xml:lang="en">
          <div class="titlepage">
            <div>
              <div>
                <h4 class="title"><a id="idp7338280"></a>errfile</h4>
              </div>
            </div>
          </div>
          <p>
                          The <span class="bold"><strong>errfile</strong></span> parameter is a C library
                          FILE * to be used for displaying additional Berkeley DB error
                          information.
                     </p>
        </div>
      </div>
      <div class="sect2" lang="en" xml:lang="en">
        <div class="titlepage">
          <div>
            <div>
              <h3 class="title"><a id="idp7263408"></a>Class</h3>
            </div>
          </div>
        </div>
        <p>
                <a class="link" href="env.html" title="Chapter 5.  The DbEnv Handle">DbEnv</a>  
            </p>
      </div>
      <div class="sect2" lang="en" xml:lang="en">
        <div class="titlepage">
          <div>
            <div>
              <h3 class="title"><a id="idp7226976"></a>See Also</h3>
            </div>
          </div>
        </div>
        <p>
                     <a class="xref" href="env.html#envlist" title="Database Environments and Related Methods">Database Environments and Related Methods</a> 
                </p>
      </div>
    </div>
    <div class="navfooter">
      <hr />
      <table width="100%" summary="Navigation footer">
        <tr>
          <td width="40%" align="left"><a accesskey="p" href="envset_errcall.html">Prev</a> </td>
          <td width="20%" align="center">
            <a accesskey="u" href="env.html">Up</a>
          </td>
          <td width="40%" align="right"> <a accesskey="n" href="envset_error_stream.html">Next</a></td>
        </tr>
        <tr>
          <td width="40%" align="left" valign="top">DbEnv::set_errcall() </td>
          <td width="20%" align="center">
            <a accesskey="h" href="index.html">Home</a>
          </td>
          <td width="40%" align="right" valign="top"> DbEnv::set_error_stream()</td>
        </tr>
      </table>
    </div>
  </body>
</html>
